package Test;

import java.util.Scanner;

public class Test2_QiuPingFangGen {
    public static void main(String[] args) {
        //键盘录入一个大等于2的整数x，计算并返回x的平方根。
        //结果只保留整数部分，小数部分将被舍去

        //分析：
        //平方根为两个相同的数积之和，如16的平方根为4，9为3
        //如对于20，知道4是16的平方根，5是25的平方根，因此20的平方根在4~5之间，以此为代码推理依据
        //可通过循环操作，直到循环结果的平方根的平方第一次大于输入的数字即可停止循环

        //键盘录入
        Scanner sc = new Scanner(System.in);
        System.out.println("请输入整数:");
        int x = sc.nextInt();

        //创建循环,从1开始循环判断,
        for (int i = 1;i <= x;i++){
            //这里i <= x如果改成i * i <= x，那么与下面else if中的i * i > x发生冲突导致不输出结果
            //因此所有代码敲完后，对于变量的取值范围开始在满足条件情况下可扩大
            //在后面代码中再逐渐缩小，尤其是在括号内
            if (x == i * i){
                System.out.println(x + "平方根的整数部分为：" + i);
                break;//跳出循环，提高代码运行效率
            } else if (i * i > x) {
                System.out.println("平方根的整数部分为：" + (i - 1));
                break;
            }


        }

    }
}
